﻿using System;

namespace SdmxMl.Common
{
    // Summary:
    //     Provides data for a cancelable event.
    public class ArtefactRefEventArgs : EventArgs
    {
        // Summary:
        //     Initializes a new instance with null artefact reference.
        public ArtefactRefEventArgs()
        {
            ArtefactRef = null;
        }
        //
        // Summary:
        //     Initializes a new instance with specified artefact reference
        //
        // Parameters:
        //   cancel:
        //     true to cancel the event; otherwise, false.
        public ArtefactRefEventArgs(ArtefactRefTyped artl)
        {
            ArtefactRef = artl;
        }

        // Summary:
        //     Gets or sets a value indicating a reference to a SDMX artefact.
        //
        // Returns:
        //     artefact reference.
        public ArtefactRefTyped ArtefactRef { get; set; }
        // Summary:
        //     Gets or sets a value indicating whether the event should be canceled.
        //
        // Returns:
        //     true if the event should be canceled; otherwise, false.
        public bool Cancel { get; set; }

    }
}
